# delimit;
set more off;

*users should download Feb10politicalpublic.sav file and convert to .dta format;
use Feb10public.dta, clear;

recode q25k (5/9=.)(1=4)(2=3)(3=2)(4=1), gen(opfed);
recode q25j (5/9=.)(1=4)(2=3)(3=2)(4=1), gen(opst);
recode q25i (5/9=.)(1=4)(2=3)(3=2)(4=1), gen(oploc);
recode q25a (5/9=.)(1=4)(2=3)(3=2)(4=1), gen(opgop);
recode q25b (5/9=.)(1=4)(2=3)(3=2)(4=1), gen(opdem);
recode q25c (5/9=.)(1=4)(2=3)(3=2)(4=1), gen(opcong);	
recode q25d (5/9=.)(1=4)(2=3)(3=2)(4=1), gen(opsc);	
	
label define opinions_rev

	4 "Very favorable"   
	3 "Mostly favorable"      
	2 "Mostly unfavorable"      
	1 "Very unfavorable"  ;
 
foreach var in gop dem cong sc fed st loc {;
	label values op`var' opinions_rev;
	};
	

recode q1 (1=1 "Approve")(2=0 "Disapprove")(9=.), gen(approve);
label var approve "President Job Approval";


recode sex (1=1)(2=0), gen(r_male);
recode age (99=.), gen(r_age);
recode educ (9=.), gen(r_educ);
recode hispcmb (1=1)(2=0)(9=.), gen(r_hisp);
recode race1_1 (1=1)(2/4=0)(9=.), gen(r_white);
   replace r_white=0 if r_hisp==1;
recode race1_1 (2=1)(1=0)(3/4=0)(9=.), gen(r_black);
   replace r_black=0 if r_hisp==1;
recode race1_1 (3=1)(1 2=0)(4=0)(9=.), gen(r_asian);
   replace r_asian=0 if r_hisp==1;   

recode marital 	(1/2=1 "Married")
				(3 4=2 "Divorced")
				(5=3 "Widowed")
				(6=4 "Single")(9=.), gen(r_marital);
tab marital, gen(r_marital);

recode income (10=.), gen(r_income);

recode attend 	(6=1 "Never")
				(5=2 "Seldom")
				(4=3 "A few times a year")
				(3=4 "Once or twice a month")
				(2=5 "Once a week")
				(1=6 "More than once a week")
				(7/9=.), gen(r_attend);

recode born (1=1)(2=0)(.=0)(9=.), gen(r_bornagn);

recode regist
           (1=1 "Yes, registered")
           (2=0 "No, not registered")
           (9=. ), gen(r_regist);

recode party (1=1)(2/5=0)(9=.), gen(gop);
recode party (1=0)(2=1)(3/5=0)(9=.), gen(dem);
recode party (1/2=0)(3/5=1)(9=.), gen(ind);

recode party (1=1 "Republican")(2=5 "Democrat") (3/5=3 "Independent")(9=.), gen(partyid);
replace partyid=2 if partyid==3 & partyln==1;
replace partyid=3 if partyid==3 & partyln==9;
replace partyid=4 if partyid==3 & partyln==2;

recode ideo (9=.), gen(ideo_all);
tab ideo_all, gen(ideo);

recode labor (1/3=1 "Yes")(4=0 "No")(9=.), gen(r_union);

recode q39 (5/9=.)(1=4)(2=3)(3=2)(4=1), gen(ecocond_nat);
label var ecocond_nat "Rate economic conditions: National";


gen year=2010;

rename state fips;

keep fips r_* op* approve gop dem ind partyid ideo* ecocond* year weight;

codebook r_* op* approve gop dem ind partyid ideo* ecocond*;
